home *** CD-ROM | disk | FTP | other *** search
/ Eagles Nest BBS 8 / Eagles_Nest_Mac_Collection_Disc_8.TOAST / Developer Tools⁄Additions / InsideBa1994 / InsideBasic-94 / IB 94 / PICT Animation / PICT Animation Demo (Z) next >
Text File  |  1992-07-30  |  2KB  |  88 lines

  1.  
  2. '________________________________________
  3. '
  4. ' Original QB code by Raoul Watson
  5. ' ZBasic Conversion By Ross W. Lambert
  6. ' Copyright (C) 1991
  7. ' Ariel Publishing, Inc.
  8. ' All Rights Reserved
  9. '________________________________________
  10.  
  11. DIM Hndl&(2)                      ' PICT handles
  12.  
  13. COORDINATE WINDOW
  14.  
  15. 'Check IF We’Re Running Under Compiler     UN-REM FOR ZBASIC 5.0 ONLY
  16. 'Hndl& = FN GETPICTURE(1000)    
  17. 'LONG IF NOT Hndl&
  18. 'ResRef = FN OPENRESFILE("PICT Animation.Res")   
  19. 'IF ResRef = 0 THEN END
  20. 'END IF
  21.  
  22. RESOURCES "PICT Animation.Res"
  23.  
  24. WINDOW 1,"Animation",(10,40)-(424,320),1
  25.  
  26.  
  27. FOR P = 0 TO 2
  28.   Hndl&(P) = FN GETPICTURE(1000+P)
  29. NEXT
  30.  
  31. Ty%=100                           'the Y scan line
  32. PLOT 0,Ty%+36 TO 440,Ty%+36       'the road
  33.  
  34. Count%=0                          'picture index
  35. Delayfac=-1.8                     'from "kinda" fast
  36.  
  37.  
  38. ' (see QB comments about leading &
  39. ' Trailing Space)
  40.  
  41. FOR X%=-99 TO 300 STEP 2          'move right
  42.   'The delay routine serves 2 needs:
  43.   '1. So you can control the speed
  44.   '2. To avoid VBL flicker (when the 
  45.   '   refresh beats the image plotting 
  46.   '   on the screen
  47.   
  48.   GOSUB "Delay"
  49.   PICTURE (X%,Ty%),Hndl&(Count%)
  50.   Count%=Count%+1
  51.   IF Count%>2 THEN Count%=0       'wrap
  52.   Delayfac!=Delayfac!+.02
  53. NEXT 
  54.  
  55. ' final pict should be the 1st one
  56. PICTURE (X%,Ty%),Hndl&(0) 
  57.  
  58. ' record end pos for forward move
  59. Endtruck%=X%+102             
  60.  
  61. Delayfac!=60
  62. GOSUB "Delay"    
  63.  
  64. ' Now move the truck to the left
  65. Count%=0
  66. Delayfac!=3                       ' From very slow
  67. FOR X%=Endtruck%-102 TO -100 STEP -3'it leaves faster...
  68.   GOSUB "Delay"
  69.   PICTURE (X%,Ty%),Hndl&(Count%)
  70.   Count%=Count%+1
  71.   IF Count%>2 THEN Count%=0
  72.   Delayfac!=Delayfac!-.2  
  73. NEXT X%
  74. END
  75.  
  76. '-----------------------------------
  77. '  see QB delay comments
  78. "Delay"
  79. Ticks& = FN TICKCOUNT
  80. T&=Ticks&+Delayfac!
  81. WHILE Ticks& < T&
  82.   Ticks& = FN TICKCOUNT
  83. WEND
  84. RETURN
  85.  
  86.  
  87.  
  88.